<!-- Самописный шаблон для использования во вложении -->
<!-- Данные для заполнения получаются из класса FreemakerJsonDataTemplate -->
<!-- В данном шаблоне iframe вложения всегда по высоте равен 150px, а содержимое прокручивается внутри iframe -->
<html lang="ru">
<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <style>
        pre {
            margin: auto;
            white-space: pre;
            overflow: auto;
            padding: 10px;
            border: 1px solid #4B4C8175;
            background: #FFFFFFC9;
            position: absolute;
            bottom: 0;
            top: 0;
            left: 0;
            right: 0;
        }

        pre > code {
            font-size: 12px
        }

        body {
            background: #F8F8F9;
        }
    </style>
</head>
<body>
<pre>
<code id="message">${data.message}</code>
</pre>
</body>
<script>
    const MAX_BLOCK_HEIGHT = 600;
    let elementMessage = document.querySelector('#message');
    let textToTemplate = elementMessage.innerText;
    let result;

    try {
        let text = JSON.parse(textToTemplate);
        result = JSON.stringify(text, (key, value) => {
            try {
                return JSON.parse(value);
            } catch(e) {
                return value;
            }
        }, 2);
    } catch(e) {
        result = textToTemplate;
    }
    elementMessage.innerText = result;

    let parentIFrames = parent.document.querySelectorAll('iframe.attachment__iframe');
    let iFrames = new Array();

    for (let i = 0; i < parentIFrames.length; i++) {
        if (parentIFrames[i].src === document.baseURI) {
            iFrames.push(parentIFrames[i]);
        }
    }

    if (iFrames.length === 1) {
        let currentIFrame = iFrames[0];
        currentIFrame.style.display = 'block';
    } else {
        console.log('Ожидается 1 найденное окно, фактически: ' + iFrames.length);
    }
</script>
</html>